package cn.demoncat.util.mall.ehsy.entity;

import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 查询物流信息
 *
 * @author 延晓磊
 * @since 2022年07月25日
 */
@Data
public class EhsyLogisticsResult extends EhsyResult{

    private EhsyLogisticsResult.Body result;

    @Data
    public static class Body{

        // 运单号
        private String sendNo;
        // 物流公司
        private String sendCompanyName;
        // 物流信息创建时间
        private LocalDateTime sendTime;
        // 物流状态：0无物流轨迹、2在途中、3已签收、4问题件、9拒收件
        private String status;
        // 物流状态描述
        private String statusDesc;
        // 物流单备注
        private String reason;
        // 是否派送成功：1是
        private String success;
        // 物流节点详情
        private List<Node> logisticsDetailList;


        @Data
        public static class Node{

            // 物流节点详情
            private String description;
            // 物流节点时间
            private String recordTime;
            // 备注
            private String remark;
        }

        /**
         * 获取标准的物流状态：0无物流轨迹、2在途中、4问题件、5拒收件、9已签收
         *
         * @return
         *
         * @author 延晓磊
         * @since 2022年07月29日
         */
        public String getStandardStatus(){
            switch (this.getStatus()) {
                case "3":
                    return "9";
                case "9":
                    return "5";
                default:
                    // 0,2,4
                    return status;
            }
        }
    }
}

